package com.golden.procedure.clientDO;

import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Date;

import com.golden.procedure.domain.BaseDO;

/**
 * 客户DO对象 <b>Description:</b><br>
 * 
 * @author Reading.Reagan</a>
 * @version 1.0
 * @Note <b>ProjectName:</b> member-api <br>
 *       <b>PackageName:</b> com.jingyanzi.member.domain <br>
 *       <b>ClassName:</b> CustomerDO <br>
 *       <b>Date:</b> 2018年7月16日 下午12:17:43
 */
public class CustomerDO extends BaseDO {

	private static final long serialVersionUID = -6709378149458365913L;

	/**
	 * 客户唯一标识（暂未使用）
	 */
	private String identifier;
	/**
	 * 未使用
	 */
	private Integer familyId;
	/**
	 * 未使用
	 */
	private Integer familyCount;
	/**
	 * 消费次数
	 */
	private Integer consumeCount;
	/**
	 * 客户创建人id
	 */
	private Integer employeeId;
	/**
	 * 客户创建人姓名
	 */
	private String employeeName;
	/**
	 * 客户等级id
	 */
	private Integer level;
	/**
	 * 客户等级名称
	 */
	private String levelName;
	/**
	 * 客户来源
	 */
	private Integer source;
	/**
	 * 客户来源名称
	 */
	private String sourceName;
	/**
	 * 线索次数
	 */
	private Integer analysisCount;
	/**
	 * 机会次数
	 */
	private Integer oppCount;
	/**
	 * 累计消费金额
	 */
	private BigDecimal totle;
	/**
	 * 最近消费时间（时间戳）
	 */
	private String consumeDateStamp;
	/**
	 * 最近消费时间
	 */
	private Date consumeDate;
	/**
	 * 订单数
	 */
	private Integer orderCount;
	/**
	 * 账户余额
	 */
	private BigDecimal balance;
	/**
	 * 客户联系地址DO对象
	 */
	private ContactDO contactDO;
	/**
	 * 客户首要联系人DO对象
	 */
	private FamilyMemberDO firstFamilyMember;
	/**
	 * 是否会会员客户：0普通客户；1会员客户
	 */
	private Integer isMember;
	/**
	 * 客户id数组（批量删除客户时使用）
	 */
	private Integer[] ids;

	public String getIdentifier() {
		return identifier;
	}

	public void setIdentifier(String identifier) {
		this.identifier = identifier;
	}

	public Integer getFamilyId() {
		return familyId;
	}

	public void setFamilyId(Integer familyId) {
		this.familyId = familyId;
	}

	public Integer getEmployeeId() {
		return employeeId;
	}

	public void setEmployeeId(Integer employeeId) {
		this.employeeId = employeeId;
	}

	public String getEmployeeName() {
		return employeeName;
	}

	public void setEmployeeName(String employeeName) {
		this.employeeName = employeeName;
	}

	public Integer getFamilyCount() {
		return familyCount;
	}

	public void setFamilyCount(Integer familyCount) {
		this.familyCount = familyCount;
	}

	public Integer getLevel() {
		return level;
	}

	public void setLevel(Integer level) {
		this.level = level;
	}

	public Integer getSource() {
		return source;
	}

	public void setSource(Integer source) {
		this.source = source;
	}

	public String getLevelName() {
		return levelName;
	}

	public void setLevelName(String levelName) {
		this.levelName = levelName;
	}

	public String getSourceName() {
		return sourceName;
	}

	public void setSourceName(String sourceName) {
		this.sourceName = sourceName;
	}

	public ContactDO getContactDO() {
		return contactDO;
	}

	public void setContactDO(ContactDO contactDO) {
		this.contactDO = contactDO;
	}

	public FamilyMemberDO getFirstFamilyMember() {
		return firstFamilyMember;
	}

	public void setFirstFamilyMember(FamilyMemberDO firstFamilyMember) {
		this.firstFamilyMember = firstFamilyMember;
	}

	public Integer getAnalysisCount() {
		return analysisCount;
	}

	public void setAnalysisCount(Integer analysisCount) {
		this.analysisCount = analysisCount;
	}

	public Integer getOppCount() {
		return oppCount;
	}

	public void setOppCount(Integer oppCount) {
		this.oppCount = oppCount;
	}

	public Integer getIsMember() {
		return isMember;
	}

	public void setIsMember(Integer isMember) {
		this.isMember = isMember;
	}

	public BigDecimal getTotle() {
		return totle;
	}

	public void setTotle(BigDecimal totle) {
		this.totle = totle;
	}

	public Date getConsumeDate() {
		return consumeDate;
	}

	public void setConsumeDate(Date consumeDate) {
		this.consumeDate = consumeDate;
	}

	public Integer getOrderCount() {
		return orderCount;
	}

	public void setOrderCount(Integer orderCount) {
		this.orderCount = orderCount;
	}

	public Integer getConsumeCount() {
		return consumeCount;
	}

	public void setConsumeCount(Integer consumeCount) {
		this.consumeCount = consumeCount;
	}

	public String getConsumeDateStamp() {
		return consumeDateStamp;
	}

	public void setConsumeDateStamp(String consumeDateStamp) {
		this.consumeDateStamp = consumeDateStamp;
	}

	public Integer[] getIds() {
		return ids;
	}

	public void setIds(Integer[] ids) {
		this.ids = ids;
	}

	public BigDecimal getBalance() {
		return balance;
	}

	public void setBalance(BigDecimal balance) {
		this.balance = balance;
	}

	@Override
	public String toString() {
		return "CustomerDO [identifier=" + identifier + ", familyId=" + familyId + ", familyCount=" + familyCount
				+ ", consumeCount=" + consumeCount + ", employeeId=" + employeeId + ", employeeName=" + employeeName
				+ ", level=" + level + ", levelName=" + levelName + ", source=" + source + ", sourceName=" + sourceName
				+ ", analysisCount=" + analysisCount + ", oppCount=" + oppCount + ", totle=" + totle
				+ ", consumeDateStamp=" + consumeDateStamp + ", consumeDate=" + consumeDate + ", orderCount="
				+ orderCount + ", balance=" + balance + ", contactDO=" + contactDO + ", firstFamilyMember="
				+ firstFamilyMember + ", isMember=" + isMember + ", ids=" + Arrays.toString(ids) + "]";
	}
	
	
}